#include "mainwindow.h"
#include "ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    QMenuBar* bar = menuBar();
    setMenuBar(bar);
    QMenu* file = bar->addMenu("文件");//有二级菜单
    bar->addMenu("编辑");
    bar->addMenu("构建");

    //添加菜单栏
    QAction* newfile = file->addAction("新建");
    QAction* openfile = file->addAction("打开");
    QAction* savefile = file->addAction("保存");
    //在此之下添加分界线
    file->addSeparator();

    QMenu* last_file = file->addMenu("最近访问的文件");
    last_file->addAction("1.txt");
    last_file->addAction("2.txt");
    last_file->addAction("3.txt");

    //添加工具栏 QToolBar
    QToolBar* toolbar = new QToolBar(this);
    //addToolBar(toolbar);//可以左右上下拖，默认在上面
    addToolBar(Qt::LeftToolBarArea, toolbar);
    toolbar->setAllowedAreas(Qt::LeftToolBarArea|Qt::RightToolBarArea);//只允许左右拖
    toolbar->setFloatable(false);//不能悬浮在中间
    toolbar->setMovable(false);//不能拖动

    toolbar->addAction(newfile);//
    toolbar->addAction(openfile);
    toolbar->addAction(savefile);


    //添加状态栏
    QStatusBar* statusbar = new QStatusBar(this);
    setStatusBar(statusbar);
    QLabel* label01 = new QLabel("人民币余额：1000000000");//或者QStringLiteral("中文")，但是这里是函数调用，会降低性能
    QLabel* label02 = new QLabel("美元余额：10000000000");//有可能出现乱码，，，点击编辑，最后一个选择GBK...Window..
    statusbar->addWidget(label01);
    statusbar->addPermanentWidget(label02);

    //铆接部件 浮动窗口 QDockWidget, 可以有多个，所以是add。  只能有一个是set，比如MenuBar
    QDockWidget* dock = new QDockWidget(this);
    addDockWidget(Qt::LeftDockWidgetArea, dock);
    QTextEdit* text = new QTextEdit(this);
    setCentralWidget(text);
    dock->setAllowedAreas(Qt::LeftDockWidgetArea|Qt::TopDockWidgetArea);
    //dock->setFloating(true);


}

MainWindow::~MainWindow()
{
    delete ui;
}







